package com.moli.iov.open.model.vo.req;

import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.List;


@Data
public class VehicleFenceBindingListVo  extends BaseVo {

    /**
     * effective_status 参数设置 查询参数（0：车牌号，1：vin）
     */
    private Integer queryParam;
    /**
     * 查询值
     */
    private String queryValue;
    /**
     * 车架号
     */
    @NotEmpty(message = "车架号不能为空", groups = {VehicleFenceBindingVo.Save.class,
            VehicleFenceBindingVo.Delete.class, VehicleFenceBindingVo.Read.class, VehicleFenceBindingVo.DeleteAll.class})
    private List<String> listVin;
    /**
     * 车架号
     */
    @NotBlank(message = "车架号不能为空", groups = { VehicleFenceBindingVo.Inside.class})
    private String vin;

    /**
     * 围栏id
     */
    @NotNull(message = "围栏id不能为空", groups = {VehicleFenceBindingVo.Save.class,
            VehicleFenceBindingVo.Read.class,
            VehicleFenceBindingVo.Delete.class, VehicleFenceBindingVo.Inside.class})
    private List<String> fenceIds;


    /**
     * 0 进围栏报警，1，出围栏报警
     */
    @NotNull(message = "围栏类型不能为空", groups = {VehicleFenceBindingVo.DeleteAll.class})
    private Integer alarmType;


    public interface Save {

    }


    /**
     * 查看
     */
    public interface Read {

    }

    /**
     * 删除
     */
    public interface Delete {

    }

    /**
     * 删除All
     */
    public interface DeleteAll {

    }
    /**
     * 车是否在围栏内
     */
    public interface Inside {

    }
}
